package main

import (
	"github.com/gin-gonic/gin"
)

type ApiResponse struct {
	No   int         `json:"no,omitempty"`
	Msg  string      `json:"msg,omitempty"`
	Data interface{} `json:"data,omitempty"`
}

func SendOk(c *gin.Context, data interface{}) {
	c.JSON(200, &ApiResponse{No: 200, Data: data})
}

func SendError(c *gin.Context, no int, msg string) {
	c.JSON(200, &ApiResponse{No: no, Msg: msg})
}

type User struct {
	ID       int    `form:"id" json:"id" gorm:"primary_key;auto_increment"`
	Port     int    `form:"port" json:"port" gorm:"unique"`
	Mark     string `form:"mark" json:"mark"`
	Passwd   string `form:"passwd" json:"passwd"`
	U        int64  `form:"u" json:"u"`
	D        int64  `form:"d" json:"d"`
	Limit    int64  `form:"limit" json:"limit"`
	Domain   string `form:"domain" json:"domain"`
	Speed    int    `form:"speed" json:"speed"`
	Enable   bool   `form:"enable" json:"enable"`              // 启用
	Token    string `form:"token" json:"token"`                // 口令
	StartAt  int64  `form:"start_at" json:"start_at" gorm:"-"` // 启动时间, 0没有启动
	CreateAt int64  `form:"create_at" json:"create_at"`
	UpdateAt int64  `form:"update_at" json:"update_at"`
	ExpireAt int64  `form:"expire_at" json:"expire_at"`
}

// Generated by https://quicktype.io

type NodeRegisterData struct {
	IP string `json:"ip"`
}

type BrookBody struct {
	ID     int    `form:"id" json:"id"`
	Port   int    `form:"port" json:"port"`
	Passwd string `form:"passwd" json:"passwd"`
	Token  string `form:"token" json:"token"` // 口令
}
